package com.molichuxing.services.infrastructure.dto.request.create;

import com.molichuxing.framework.dto.RequestRootDto;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 合同
 * </p>
 *
 * @author
 * @since 2019-10-08
 */
@Data
public class ContractCreateDto extends RequestRootDto {

    private static final long serialVersionUID = 1L;

    private Integer id;

    /**
     * 合同编号 contract_code
     */
    private String contractCode;

    /**
     * 订单编号 order_code
     */
    private Long orderCode;

    /**
     * 合同模板ID contract_template_id
     */
    private Integer contractTemplateId;

    /**
     * 合同模板路径 contract_template_path
     */
    private String contractTemplatePath;

    /**
     * 合同名称 contract_name
     */
    private String contractName;

    /**
     * 合同类型（） contract_type
     */
    private Integer contractType;

    /**
     * 文件路径 contract_path
     */
    private String contractPath;

    /**
     * 合同金额 contract_money
     */
    private BigDecimal contractMoney;

    /**
     * 合同签订时间 signed_time
     */
    private LocalDateTime signedTime;

    /**
     * 合同到期日期 end_time
     */
    private LocalDate endTime;

    /**
     * 合同生效日期 effective_time
     */
    private LocalDate effectiveTime;

    /**
     * 是否创建成功（0：否，1：是） is_created
     */
    private Integer isCreated;

    /**
     * 是否电子合同（0：否，1：是） is_econtract
     */
    private Integer isEcontract;

    /**
     * 合同状态（1：生效中，2：自然失效，3：协商失效） contract_status
     */
    private Integer contractStatus;

    /**
     * 主合同订单号 main_order_code
     */
    private Long mainOrderCode;

    /**
     * 业务类型（1：订阅，2：专属） business_type
     */
    private Integer businessType;

    /**
     * 担保方式（0：无担保 1：保证人担保 ） guarantee_type
     */
    private Integer guaranteeType;

    /**
     * 操作人 op_name
     */
    private String opName;

    /**
     * 操作时间 op_time
     */
    private LocalDateTime opTime;
}
